A facsimile (“fax”) is a form of telegraphy wherein scanned materials, such as printed text and images, are converted into electrical signals and transferred over a telephone network by, e.g., fax machines connected to the network. Recent advances in technology have resulted in the provision of high-availability and reliable computing being delivered as a service, such as an email-to-fax processing service, over a computer network. A communication system may be configured to provide such computing (“cloud computing”) to process email-to-fax requests received from the computer network into a format suitable for transmission over the telephone network. Here, emails may be issued by one or more customers of the communication system connected to the computer network and converted by the system to a fax format for transmission over the telephone network.
Existing systems process email-to-fax requests in a deterministic manner; that is, the order in which requests are processed is defined by rules with predictable results. For example, a known communication system for processing email-to-fax requests uses a plurality of queues and logic circuitry configured to organize operations needed to maintain sequencing of packets or messages and accommodate latency between various data rates of processing resources in the system. The queues are also employed to allow the system to sequence messages, e.g., email-to-fax requests, issued by customers of the system until the processing resources are available. This implementation orders the requests such that they are accessed and processed in a first-in, first-out (FIFO) manner.
However, there are situations where a deterministic implementation is undesirable. For instance, a situation may arise where a particular customer having substantial service demands may effectively overwhelm the system with its requests. In this situation, a deterministic implementation, such as FIFO, may prioritize processing of that customer's requests to the detriment of other customer requests. That is, such an implementation may not allow the system to share the processing resources among the customers to thereby enable servicing of all requests in a fair and impartial manner.